package com.free.company.member;

import com.free.company.member.constants.SysContants;
import com.free.messager.IMessager;
import com.free.messager.MessagerManager;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.support.SpringBootServletInitializer;

import javax.annotation.PostConstruct;

/**
 * <p>
 * 功能概述:
 * </p>
 * <p>
 * 功能详述:
 * </p>
 */
@SpringBootApplication
@EnableAutoConfiguration
@ConfigurationProperties
public class CompanyMemberBoot extends SpringBootServletInitializer {
    /*========================================================================*
     *                         Public Fields (公共属性)
     *========================================================================*/

    /*========================================================================*
     *                         Private Fields (私有属性)
     *========================================================================*/
    @Value("${spring.profiles.active}")
    private String env;

    @PostConstruct
    public void init()
    {
        SysContants.instance().setCurPath(env);
    }
    /*========================================================================*
     *                         Construct Methods (构造方法)
     *========================================================================*/

    /*========================================================================*
     *                         Public Methods (公有方法)
     *========================================================================*/
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application)
    {
        return application.sources(CompanyMemberBoot.class);
    }

    public static void main(String[] args)
    {
        SpringApplication.run(CompanyMemberBoot.class, args);
    }
    /*========================================================================*
     *                         Private Methods (私有方法)
     *========================================================================*/
}
